1. Field of the Invention
The present invention relates to the field of the graphical user interfaces, and more particularly to a method and a system for the on-screen displaying of items of a three-dimensional interactive menu.
2. Description of the Related Art
The ever increasing diffusion in the mass-market of digital interactive devices—such as digital television sets, media centers, smartphones, personal digital assistants, video game consoles and the like—has called for the development of simple and immediate Graphical User Interfaces (GUI) that can be exploited by the users for interacting with such devices in an intuitive way. Thanks to the graphical capabilities of the modern digital interactive devices, now it is possible to obtain an on-screen display of a three-dimensional (3D) menu formed by a plurality of items arranged within a 3D virtual environment. The selection of an item among those forming the menu is performed by “navigating” the 3D virtual environment through proper navigation commands, e.g., input through directional keys arranged on a remote control of the digital interactive device itself. For example, such navigation may be carried out according to a first person perspective view of the environment obtained through the virtual lens of a movable virtual camera; in this way, an item of the menu may be selected by moving—through the navigation commands—such virtual camera within the virtual environment until such item is in the close-up of the virtual camera.
The way the items forming the menu are arranged within the 3D virtual environment strongly influences the perceptive feelings of the user when he/she is interacting with the digital interactive device. In order to be sufficiently effective and reliable, a 3D menu of the abovementioned type has to be capable of displaying on-screen all the items forming the menu in a single view. Moreover, the items arrangement should be capable of making clearly visible the way each item can be reached through the navigation of the 3D virtual environment, i.e., it has to clearly show without ambiguity which are the specific directions to be selected for reaching a specific item.
3D menus of this type are also affected by a severe drawback that negatively influences the perceptive feelings of the users. Particularly, when the virtual camera is moving ahead within the 3D virtual environment during the navigation so as to approach a specific item of the menu, the items of the menu that are located in previous positions exit from the view of the virtual camera (being now located “behind” the virtual camera itself); in this situation, the user has the feeling that such items are no more reachable. Actually, such items may be reached by changing the viewpoint of the virtual camera (e.g., through a 180 degree rotation of the virtual camera), or by allowing the virtual camera to move backward. However, these solutions are not really intuitive for the user, especially in a context wherein the navigation of the 3D virtual environment navigation is mainly performed following the forward direction.
In order to better illustrate how the abovementioned drawback affects the navigation, reference is now made to the exemplary 3D menu illustrated in FIG. 1. Particularly, FIG. 1 is a top view of a 3D virtual environment wherein a menu formed by nine selectable items 1, 2, . . . , 9 disposed according to a rhomboidal grid arrangement 100 is located on a plane defined by the orthogonal axis identified in figure with the references x and z (the third orthogonal axis y exiting from the sheet's plane). The menu is structured as a graph, whose nodes are the items 1, 2, . . . , 9. Each item 1, 2, . . . , 9 (node) of the graph is connected to adjacent items 1, 2, . . . , 9 according to predetermined navigation directions; in the example considered, such predetermined navigation directions are six, and particularly:                AHEAD: having a direction forming an angle of 180 degrees with the axis z (e.g., the navigation from item 1 to item 4);        LEFT_AHEAD: having a direction forming an angle of 135 degrees with the axis z (e.g., the navigation from item 1 to item 2);        RIGHT_AHEAD: having a direction forming an angle of −135 degrees with the axis z (e.g., the navigation from item 1 to item 3);        BEHIND: having a direction parallel to the axis z (e.g., the navigation from item 4 to item 1);        LEFT_BEHIND: having a direction forming an angle of 45 degrees with the axis z (e.g., the navigation from item 4 to item 2), and        RIGHT_BEHIND: having a direction forming an angle of −45 degrees with the axis z (e.g., the navigation from item 4 to item 3).        
Two items 1, 2, . . . of the menu are said to be in a relationship if it is possible to directly move from one to the other (and vice versa) in a single navigation step following a selected navigation direction without having to involve a third item. Said relationship are visually depicted in FIG. 1 with double ended arrows, referred to as “affordances”; from a topological point of view, two items 1, 2, . . . of the menu are in a relationship if the corresponding nodes are adjacent in the graph.
If the virtual camera is positioned in the 3D virtual environment with the lens perpendicular to the axis z so as to have the item 1 in the close-up thereof—meaning that the item of the menu actually selected is the item 1—, a possible perspective view of the menu is illustrated in FIG. 2A. If the virtual camera is translated, without being rotated, along the direction LEFT_AHEAD so as to shot—and, thus, select—the item 2, the perspective view of the menu becomes the one illustrated in FIG. 2B. It has to be appreciated that compared to before, the items actually displayed are only six. For example, the item 1 from which the navigation is started is now no more visible, being now outside from the view of the virtual camera; however, it can be assumed that by translating back the virtual camera along the direction RIGHT_BEHIND, it is possible to view such item 1 again. After a navigation along the direction AHEAD to reach the item 8 (not illustrated), and the direction RIGHT_AHEAD to reach the item 9, the actual perspective view of the menu through the virtual camera is the one illustrated in FIG. 2C. In this situation, since the item 9 is located on the upper boundary of the items arrangement, the only item that is actually displayed is the item 9. All the other items 1, 2, . . . , 8 are indeed “behind” the virtual camera, and thus are not displayed thereby. Now, if an user wanted to come back to the previously selected item 2, he/she would be disorientated, because without any displayed reference point it is not so obvious to remember which is the correct path to follow in order to come back to said specific item 2. It is clear that this drawback exacerbates as the number of items forming the menu increases.
In order to solve, or at least mitigate this drawback, known solutions provide for displaying again in the view of the virtual camera those items that have already been surpassed by the camera during the navigation, for example by relocating such items in still free positions of the 3D environment that are included in the actual view of the virtual camera. However, once the navigation has reached an item of the menu that was located on the upper boundary of the initial items arrangement, such relocation may have practically involved all the other items of the menu. In this case, the current items arrangement may result to be very different compared to the initial one, being formed after an arbitrary relocations of the items, that does not preserve the various connections among adjacent items specified by the initial arrangement. Thus, the user has the impression of being in a completely different contest compared to the one defined by the initial items arrangement.
According to further solutions known in the art, a very different arrangement of the items within the 3D virtual environment may be provided. For example, the items of the menu may be arranged on the surface of a sphere; however, for a perspective matter, with this arrangement the directions to be followed during the navigation of the menu are neither clear nor intuitive. According to a further solution, the items of the menu are arranged in a ring, with such ring that may be rotated during the navigation in two directions. In this case, the directions to be followed for the navigation of the items are surely both clear and intuitive; however, the space of the 3D virtual environment is exploited in a very inefficient way, especially when the number of items (and, thus, the radius of the corresponding ring) increases.
The PCT patent application WO 99/26160 discloses a hyperspace constructed of cells having paired connectors that define dimensions. Complex tissues of the cells in linear and cyclical ranks can be navigated and manipulated by use of a stepper and various view rasters. The types of cells may include text cells, audio cells, video cells, and executable cells. By the use of clone cells and a clone dimension, the cells may be duplicated or referenced by transclusion.
The PCT patent application WO 2008/115842 discloses an intuitive and natural menu selection pattern that allows a user to quickly and easily navigate though a hierarchical menu while mitigating errors associated with making a menu selection. The hierarchical menu can be presented as a flower-like design whereby a main menu item is a central item and lower level menu items are gathered around or near its corresponding upper level menu item. As a menu item is selected, its appearance can change indicating that such item has been selected.
3D user interfaces have been studied by Sun Microsystems, Inc. Specifically, a software built using the so-called Project Looking Glass (LG3D) has been proposed, which employs three basic menus: the ring menu, the arc menu and the cityscape menu. The ring menu has all of its items around an invisible ring. The arc menu has all of its items in an arc that trails off the borders of the screen at the top and bottom. The cityscape menu has a series of “buildings”, each representing a file or directory. The directories contents are represented by little buildings on top of the directory building.